package com.renne.email.mapper;

import java.util.List;

import com.renne.email.domain.MailSenderConfig;
import com.renne.email.domain.MailSenderConfigVo;
import com.renne.email.domain.MailSenderConfigQuery;

/**
 * 发件人邮箱配置Mapper接口
 *
 * @author LiuYu
 * @date 2024-07-26
 */
public interface MailSenderConfigMapper {
    /**
     * 查询发件人邮箱配置
     *
     * @param senderEmailConfigId 发件人邮箱配置ID
     * @return 发件人邮箱配置
     */
    public MailSenderConfigVo selectMailSenderConfigVoById(String senderEmailConfigId);

    /**
     * 查询发件人邮箱配置列表
     *
     * @param query 发件人邮箱配置查询参数
     * @return 发件人邮箱配置集合
     */
    public List<MailSenderConfigVo> selectMailSenderConfigVoList(MailSenderConfigQuery query);

    /**
     * 新增发件人邮箱配置
     *
     * @param mailSenderConfig 发件人邮箱配置
     * @return 结果
     */
    public int insertMailSenderConfig(MailSenderConfig mailSenderConfig);

    /**
     * 修改发件人邮箱配置
     *
     * @param mailSenderConfig 发件人邮箱配置
     * @return 结果
     */
    public int updateMailSenderConfig(MailSenderConfig mailSenderConfig);

    /**
     * 删除发件人邮箱配置
     *
     * @param senderEmailConfigId 发件人邮箱配置ID
     * @return 结果
     */
    public int deleteMailSenderConfigById(String senderEmailConfigId);

    /**
     * 批量删除发件人邮箱配置
     *
     * @param senderEmailConfigIds 需要删除的数据ID
     * @return 结果
     */
    public int deleteMailSenderConfigByIds(String[] senderEmailConfigIds);

}
